#include<bits/stdc++.h>
using namespace std;
const int N=3e2+5,mod=999999999;
long long n,m,t,opt,a[N][N],dir,op,qwq,w;
int main()
{
	freopen("fire.in","r",stdin);
	freopen("fire.out","w",stdout);
	ios::sync_with_stdio(false);
	cin.tie(0);
	cout.tie(0);
	cin>>n>>m;
	for(int i=1;i<=m;++i)
	{
		cin>>opt;
		if(opt==1)
		{
			cin>>dir>>qwq>>op>>w;
			if(dir==0)
			{
				for(int j=1;j<=n;++j)
				{
					if(op==1)
						a[qwq][j]=(a[qwq][j]&w);
					if(op==2)
						a[qwq][j]=(a[qwq][j]|w);
					if(op==3)
						a[qwq][j]=(a[qwq][j]^w);
					if(op==4)
						a[qwq][j]=(a[qwq][j]+w)%mod;
				}
			}
			else{
				for(int j=1;j<=n;++j)
				{
					if(op==1)
						a[j][qwq]=(a[j][qwq]&w);
					if(op==2)
						a[j][qwq]=(a[j][qwq]|w);
					if(op==3)
						a[j][qwq]=(a[j][qwq]^w);
					if(op==4)
						a[j][qwq]=(a[j][qwq]+w)%mod;
				}
			}
		}
		else{
			cin>>dir>>qwq;
			long long ans=0;
			for(int i=1;i<=dir;++i)
				for(int j=1;j<=qwq;++j)
					ans+=a[i][j];
			cout<<ans<<'\n';
		}
				
	}
	return 0;
}
